Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

221
Views
Cualquier diferencia entre x || [] y x?? [] en javascript?

He visto ambos x || [] y x ?? [] utilizado para proporcionar un valor alternativo si x es nulo. ¿Hay casos en los que estos dos dan resultados diferentes?

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Si x fuera un valor falso no nulo, sería diferente.

 x = 0; x = x ?? [] console.log(x); y = null; y = y ?? [] console.log(y);

about 4 years ago · Juan Pablo Isaza Report

0

Estas expresiones x || [] y x ?? [] son asignaciones lógicas en Javascript.

x ?? [] se usa para representar casos nulos o indefinidos , mientras que x || [] representan true si a o b es true .

  • x ?? [] funciona evaluando si el lado izquierdo de la expresión es nulo o indefinido.

  • x || [] funciona evaluando si a o b es true . Si a es verdadero, continúe en la declaración if. Si b es verdadera, continúa en la declaración if.

about 4 years ago · Juan Pablo Isaza Report

0

Hacen cosas diferentes.

?? se denomina operador coalescente nulo https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Nullish_coalescing_operator

Y funciona comprobando si el lado izquierdo de la evaluación es nulo o indefinido y si no es el caso asignará el lado derecho de la evaluación.

Lo anterior es realmente útil cuando estás comprobando una variable con el valor zero , que será falso si lo estás comprobando.

|| es el operador lógico https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_OR

El logical operator funciona como cualquier otro operador lógico. Evaluará el lado izquierdo y luego el lado derecho

 null || 1 // output 1 undefined || 1 // output 1 0 || 1 // 1 <-- there are cases where you want to treat zero as a truthy value and **that's where the nullish operator is handy**
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!